package org.kaleido.client.view;

import com.google.gwt.user.client.ui.AcceptsOneWidget;
import com.google.gwt.user.client.ui.LayoutPanel;

/**
 * Representa al Layout general de la aplicación, el cual contiene las
 * diferentes zonas de display que se pueden mostrar en la aplicación.
 */
public interface ApplicationLayoutView {

    /**
     * Layout genérico, el cual contiene a los demas.
     */
    LayoutPanel getMainLayoutPanel();

    /**
     * Inicializa el layout de la aplicación. Se inicializa la cabecera y el
     * dsiplay de datos.
     */
    void setDefaultLayout();

    void setInfoLogLayout();

    void setAdminMenuLayout();

    AcceptsOneWidget getHeaderMenuContainer();

    AcceptsOneWidget getLeftMenuContainer();

    AcceptsOneWidget getSearchContainer();

    AcceptsOneWidget getInfoLogContainer();

    AcceptsOneWidget getDataLogContainer();
}
